{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from utils.metric import calculate_covariance_matrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def PCA(X,n_components):\n",
    "    covariance_matrix = calculate_covariance_matrix(X)  #计算协方差矩阵\n",
    "    eigenvalues, eigenvectors = np.linalg.eig(covariance_matrix) #特征值分解\n",
    "    idx = eigenvalues.argsort()[::-1]\n",
    "    eigenvalues = eigenvalues[idx][:n_components]\n",
    "    eigenvectors = np.atleast_1d(eigenvectors[:, idx])[:, :n_components]\n",
    "    X_transformed = X.dot(eigenvectors)\n",
    "    return X_transformed"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from sklearn import datasets\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib.cm as cmx\n",
    "import matplotlib.colors as colors\n",
    "import numpy as np\n",
    "\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "data = datasets.load_digits()\n",
    "X = data.data\n",
    "y = data.target"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "X_trans = PCA(X, 2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x11702e898>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x1 = X_trans[:, 0]\n",
    "x2 = X_trans[:, 1]\n",
    "\n",
    "cmap = plt.get_cmap('viridis')\n",
    "colors = [cmap(i) for i in np.linspace(0, 1, len(np.unique(y)))]\n",
    "\n",
    "class_distr = []\n",
    "# Plot the different class distributions\n",
    "for i, l in enumerate(np.unique(y)):\n",
    "    _x1 = x1[y == l]\n",
    "    _x2 = x2[y == l]\n",
    "    _y = y[y == l]\n",
    "    class_distr.append(plt.scatter(_x1, _x2, color=colors[i]))\n",
    "\n",
    "# Add a legend\n",
    "plt.legend(class_distr, y, loc=1)\n",
    "\n",
    "# Axis labels\n",
    "plt.suptitle(\"PCA Dimensionality Reduction\")\n",
    "plt.title(\"Digit Dataset\")\n",
    "plt.xlabel('Principal Component 1')\n",
    "plt.ylabel('Principal Component 2')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "covariance_matrix = calculate_covariance_matrix(X)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "eigenvalues, eigenvectors = np.linalg.eig(covariance_matrix)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [],
   "source": [
    "idx = eigenvalues.argsort()[::-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [],
   "source": [
    "eigenvalues = eigenvalues[idx][:2]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 179.0069301 ,  163.71774688])"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "eigenvalues"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[  0.00000000e+00,   0.00000000e+00],\n",
       "       [  1.73094651e-02,   1.01064569e-02],\n",
       "       [  2.23428835e-01,   4.90849204e-02],\n",
       "       [  1.35913304e-01,   9.43337493e-03],\n",
       "       [  3.30323092e-02,   5.36015636e-02],\n",
       "       [  9.66340844e-02,   1.17755318e-01],\n",
       "       [  8.32943805e-03,   6.21281792e-02],\n",
       "       [ -2.26900082e-03,   7.93574578e-03],\n",
       "       [  3.20516495e-04,   1.63216259e-04],\n",
       "       [  1.19308905e-01,   2.10167064e-02],\n",
       "       [  2.44451676e-01,  -6.03485687e-02],\n",
       "       [ -1.48512745e-01,   5.33769554e-03],\n",
       "       [  4.67319410e-02,   9.19769205e-02],\n",
       "       [  2.17740744e-01,   5.19210493e-02],\n",
       "       [  1.48136776e-02,   5.89354684e-02],\n",
       "       [ -4.47779518e-03,   3.33283413e-03],\n",
       "       [  4.94136398e-05,   4.22872096e-05],\n",
       "       [  7.95419375e-02,  -3.62458505e-02],\n",
       "       [ -8.33951454e-02,  -1.98257337e-01],\n",
       "       [ -2.15915342e-01,   4.86386550e-02],\n",
       "       [  1.72126801e-01,   2.25574894e-01],\n",
       "       [  1.63712098e-01,   4.50541862e-03],\n",
       "       [ -2.86444452e-02,  -2.67696727e-02],\n",
       "       [ -4.23251803e-03,   2.08735745e-04],\n",
       "       [ -9.85488574e-05,   5.66233953e-05],\n",
       "       [ -6.42319144e-02,  -7.71235121e-02],\n",
       "       [ -2.54093316e-01,  -1.88447107e-01],\n",
       "       [  3.56771026e-02,   1.37952518e-01],\n",
       "       [  2.09462569e-01,   2.61042779e-01],\n",
       "       [  4.31311420e-02,  -4.98350596e-02],\n",
       "       [ -5.13118688e-02,  -6.51113775e-02],\n",
       "       [ -2.13422732e-04,  -4.03200346e-05],\n",
       "       [  0.00000000e+00,   0.00000000e+00],\n",
       "       [ -1.59950883e-01,  -8.81559918e-02],\n",
       "       [ -3.68690774e-01,  -8.71737595e-02],\n",
       "       [ -1.64406827e-01,   2.70860181e-01],\n",
       "       [ -8.52007908e-02,   2.85291800e-01],\n",
       "       [ -3.72982855e-02,  -1.66461582e-01],\n",
       "       [ -2.15866980e-02,  -1.27860543e-01],\n",
       "       [  0.00000000e+00,   0.00000000e+00],\n",
       "       [ -1.28865585e-03,  -2.89440157e-04],\n",
       "       [ -1.06945287e-01,  -5.08304859e-02],\n",
       "       [ -3.03067457e-01,  -1.30274463e-01],\n",
       "       [ -2.47813041e-01,   2.68906468e-01],\n",
       "       [ -2.09637296e-01,   3.01575537e-01],\n",
       "       [ -1.22325219e-02,  -2.40259064e-01],\n",
       "       [  3.69458497e-02,  -2.17555551e-01],\n",
       "       [ -1.61485028e-03,  -1.32726068e-03],\n",
       "       [ -6.93023548e-04,  -2.86742937e-04],\n",
       "       [  8.35144239e-03,  -1.05548282e-02],\n",
       "       [  5.58598986e-02,  -1.53370694e-01],\n",
       "       [ -9.30534169e-02,   1.19535173e-01],\n",
       "       [ -1.07387720e-01,   9.72508046e-02],\n",
       "       [  1.37734565e-01,  -2.85869538e-01],\n",
       "       [  6.32879466e-02,  -1.48776446e-01],\n",
       "       [ -9.61671077e-04,  -5.42290907e-04],\n",
       "       [ -9.55079131e-06,   3.34028085e-05],\n",
       "       [  1.40786840e-02,   1.00791167e-02],\n",
       "       [  2.35675488e-01,   7.02724074e-02],\n",
       "       [  1.41225588e-01,  -1.71108112e-02],\n",
       "       [  9.15964553e-03,  -1.94296399e-01],\n",
       "       [  8.94184677e-02,  -1.76697117e-01],\n",
       "       [  3.65977111e-02,  -1.94547053e-02],\n",
       "       [  1.14684954e-02,   6.69693895e-03]])"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "eigenvectors[:, idx][:,:2]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 69,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X_transformed = X.dot(eigenvectors)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[  9.28679193e-01,  -1.95546165e+01,   6.93233315e+00, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00],\n",
       "       [ -8.28839856e+00,   2.24889660e+01,  -6.97022751e+00, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00],\n",
       "       [ -7.32271022e+00,   1.16762534e+01,  -5.48927955e+00, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00],\n",
       "       ..., \n",
       "       [ -1.11320710e+01,   8.68051925e+00,  -8.13027600e+00, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00],\n",
       "       [  4.54131284e+00,  -1.07036866e+01,   7.64014488e+00, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00],\n",
       "       [  1.36023738e-02,  -4.64528218e+00,  -1.33044300e+01, ...,\n",
       "          0.00000000e+00,   0.00000000e+00,   0.00000000e+00]])"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_transformed"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
